草庐IT

android - ProgressDialog 没有出现

全部标签

javascript - GM_setClipboard(和其他 GM 函数)在 Firefox 中给出错误,但在 Chrome/Tampermonkey 中没有给出错误?

我在Firefox中工作并尝试创建一个函数,当我按下Shift+*(Numpad)时将复制链接的文本。代码通常在ChromeTampermonkey中工作,但由于某种原因它在Firefox中什么都不做。控制台报如下错误:"ReferenceError:GM_setClipboardisnotdefined"这是我的代码:document.addEventListener("keydown",function(i){varselectLink=$('a').eq(8);//ThelinkbyindexvartargetLink=selectLink.text();//Thelinktex

没有插件的 Javascript 输入文本屏蔽

我想在不改变实际值的情况下屏蔽输入框中的文本。我不能使用任何插件。我目前正在这样做-但如您所见,问题是实际值在提交时发生了变化。我怎样才能改变显示值?$("input[name='number']").focusout(function(){varnumber=this.value.replace(/(\d{2})(\d{3})(\d{2})/,"$1-$2-$3");this.value=number;} 最佳答案 你需要两个输入两个输入应该可以完成工作。一个输入将包含屏蔽文本,另一个将是包含真实数据的隐藏输入。我处理屏蔽的方法是

javascript - 如何找到没有 html 标签的文本并用 p 元素包装它

我有以下HTML代码。我想查找并替换没有HTML标记的文本,并使用jQuery将其包装在p元素中。有没有办法实现我的目标?MytasksLoremipsumdolorsitamet,consetetursadipscingelitrLoremipsumdolorsitLoremipsumdolorsitLoremipsumdolorsitLoremipsumdolorsitLoremipsumdolorsitamet,consetetursadipscingelitr 最佳答案 为此,您需要找到子文本节点并将它们包装在中标签。为此,

javascript - 为什么在 Visual Studio 2017 中使用 Node.js 交互窗口时会出现 "SyntaxError: Unexpected identifier"错误?

我是Node.js和npm的新手,我正在尝试在VisualStudio2017中配置JavaScript开发环境。我已经下载并安装了最新推荐版本的Node.js(当前为v6.11.1)。在命令提示符下,我验证了我的Node.js路径是否配置正确并且我指向的是预期的版本。为此,我跑了:node-v正如预期的那样,我回来了:v6.11.1我还配置了VisualStudio来使用这个版本。为此,我转到“工具”>“选项”,将Node.js根文件夹添加到我的“外部Web工具”列表中,并将路径移至列表顶部,如下面的屏幕截图所示。我已通过修改我的package.json文件并验证包是否已下载来验证V

javascript - 为什么 Promise 没有 get() 函数?

如果您知道Promise已经被解决,为什么不能直接调用get()并接收值呢?与将then(..)与回调函数一起使用相反。所以不要这样做:promise.then(function(value){//dosomethingwithvalue});我希望能够做的更简单:varvalue=promise.get();Java为它的CompletableFuture提供了这个我看不出为什么JavaScript不能提供相同的功能。 最佳答案 Java的get方法“如有必要,等待此future完成”,即它会阻塞当前线程。我们绝对不想在只有一个“

javascript - Object.assign 没有正确复制

我正在使用VueJS。我有一个接收对象作为参数的方法。然后我用Object.assign()克隆这个对象。Component.vueexportdefault{//...methods:{//...activateEditMode(item){this.editItemIndex=this.travelItinerary.indexOf(item)this.editItem=Object.assign({},item)//...}}}this.roteiroCompleto[0]处的原始对象:但是当我编辑克隆对象this.itemEditado时:原始对象this.roteiroCom

javascript - 有没有办法将 map 的所有条目设置为一个值

我有一个数组,我想将其用作map的键并将每个值设置为true。除了在我的数组上使用forEach循环来设置每个条目之外,还有其他方法吗?这就是我现在的做法:constlist=[0,1,2,3];constmyMap=newMap();list.forEach(element=>myMap.set(element,true));有没有更好的办法? 最佳答案 一种更简洁、更实用的方法是将列表的map作为参数传递给map:constlist=[0,1,2,3];constmyMap=newMap(list.map(key=>[key,t

javascript - 有没有一种更简单的方法可以在不捕获的情况下进行单行尝试?

当我做这样的事情时:letresolved=null;try{resolved=require.resolve(modulePath)}catch(e){}我想知道是否有更短的语法,例如:letresolved=null;tryresolved=require.resolve(modulePath)有没有办法在不打开catchblock的情况下原谅这一行?有这样的东西,但我正在寻找更自然的东西:functiont(fn,def){letresolved=def;try{resolved=fn()}catch(e){}returnresolved;} 最佳答案

javascript - 更改模板标签后 John Resig 的微模板出现语法错误 <# {% {{ 等

我在使用JohnResig的Micro模板时遇到了一些麻烦。谁能帮我解决为什么它不起作用?这是模板testcontent{%=id%}{%=name%}以及引擎的修改部分str.replace(/[\r\t\n]/g,"").split("{%").join("\t").replace(/((^|%>)[^\t]*)'/g,"$1\r").replace(/\t=(.*?)%>/g,"',$1,'").split("\t").join("');").split("%}").join("p.push('").split("\r").join("\\'")+"');}returnp.joi

javascript - 将 WMD 编辑器的预览 HTML 与服务器端 HTML 验证对齐(例如,没有嵌入的 JavaScript 代码)

关于如何对WMD编辑器生成的Markdown进行服务器端清理以确保生成的HTML不包含恶意脚本,如下所示:但我也没有找到堵住客户端漏洞的好方法。当然,客户端验证不能替代服务器上的清理验证,因为任何人都可以假装是客户端并向您发送令人讨厌的Markdown。而且,如果您在服务器上删除HTML,攻击者将无法保存错误的HTML,这样其他人以后就无法看到它,并且他们的cookie被盗或session被错误的脚本劫持。因此,有一个有效的案例表明,在WMD预览Pane中执行无脚本规则可能也不值得。但想象一下,攻击者找到了一种将恶意Markdown放到服务器上的方法(例如,来自另一个站点的受损提要,或